home *** CD-ROM | disk | FTP | other *** search
- Kali Documentation
- (c) Copyright 1995 by Jay Cotton
- All right reserved.
- (comments: jay@calc.vet.uga.edu)
- updated 8/30/95
-
- Introduction
-
- Most games only support IPX networks and modem/direct serial link
- play; TCP/IP networks are not natively supported. With the right
- software, however, most games designed to be played over IPX LANs
- can be fooled into operating over the Internet. In the pages that
- follow, we will attempt to answer the most frequently asked
- questions about playing these games over the Internet, including
- what you need, and how to set it up.
-
- IPX network games can be played over the Internet using a program
- called Kali. Kali uses the UDP protocol to send game information
- between multiple machines on the Internet. Kali has been used to
- play Descent, DOOM, Rise of the Triad, Terminal Velocity, Warcraft,
- VR Pool, Super Karts and other games over the Internet with
- opponents from as far away as Estonia.
-
-
- Getting Prepared - Hardware
-
- To use Kali, you will need the following hardware:
-
- * If your site is directly connected to the Internet, you'll need
- a network interface card (NIC) for your machine. And not just any
- old NIC, mind you - your NIC must be supported by a packet driver
- if you wish to use it to play Internet games. Usually this means
- that your NIC must be an ethernet card, although Kali has been
- successfully played over token ring. We will assume that your PC
- is already equipped with a suitable NIC, although it may currently
- be in use for some other non-TCP/IP function (such as a node on a
- Novell network). As long as your NIC is supported by a standard
- packet driver, your machine can be readily converted into a Kali
- "playstation."
-
- * If you are not directly connected, you'll need a high speed modem
- (the faster the better) as well as an account with an ISP (Internet
- Service Provider) which has suitable dialup facilities.
-
- NOTE: Users with "shell accounts" or who use SLIP emulators such as
- TIA and SLiRP can also use Kali. See the section "Using Kali with
- a shell account."
-
- *If you're currently using SLIP or PPP, but your drivers operate
- from under Microsoft Windows (such as Trumpet Winsock), you MUST
- obtain a DOS SLIP or PPP driver; your Windows-based drivers will
- NOT work for Kali.
-
- Getting Prepared - Software
-
- In addition to the hardware requirements, some software is also
- required to complete your setup. Before you can play, you'll need
- to pick up the following:
-
- * A packet driver. The packet driver is a standardized interface
- that lets Kali "talk" to an ethernet card or modem.
-
- * Kali, the TCP/IP network driver for IPX games.
-
- * Some basic network diagnostic tools, such as a PING or TRACEROUTE
- program. These are not absolutely necessary, but can definitely be
- useful for debugging and testing your setup.
-
- Finding Kali and Related Files
- ------------------------------
- To obtain Kali, log on to one of the following ftp sites (using
- anonymous ftp). Change to the specified directory (e.g. cd
- /pub/kali). Download the file kali11f.zip. This is the latest
- version of Kali as of this writing.
-
- ftp://ftp.axxis.com/pub/kali/
- ftp://ftp.internexus.net/pub/kali/
- ftp://kali.jedi.net/kali/
-
- The following Web sites also include information and some files:
-
- http://www.axxis.com/kali/
- http://www.internexus.net/kali/
- http://www.teleport.com/~caustic/
- http://gremlinx.bevc.blacksburg.va.us/
-
- Finding ethernet packet drivers
- -------------------------------
- Many ethernet cards come with the appropriate packet drivers on a
- utilities diskette packaged with the card. If your card does not
- come with a packet driver, there is an excellent collection of
- freely available packet drivers called the Crynwr Packet Driver
- collection. You can obtain it via anonymous ftp from:
-
- ftp://oak.oakland.edu/simtel/msdos/pktdrvr/pktd11.zip
- ftp://ftp.cdrom.com/pub/simtel/msdos/pktdrvr/pktd11.zip
-
- Finding slip or ppp packets drivers
- -----------------------------------
- SLIP (or SLiRP) users should get the file slippr15.zip and PPP
- users should get the file ppp.zip. Both of these files can be
- found at the Kali sites listed above.
-
- Diagnostic Software
- -------------------
- If you need basic network diagnostic utilities, the WATTCP
- applications are freely available and include a PING program. Look
- for a file called apps.zip on your favorite ftp site, or find it
- and other wattcp sources at:
-
- ftp://dorm.rutgers.edu/pub/msdos/wattcp/
-
- NOTE: people using SLiRP will not be able to use ping utility.
-
- Setting up the Hardware
-
- Setting up your computer to use a DOS packet driver can be
- complicated for people who aren't network gurus. This section will
- attempt to show you all the steps needed to get the packet driver
- installed and functioning properly.
-
- Ehernet Setup Procedure
- -----------------------
- Step 0: START WITH A CLEAN BOOT!!!!! Set up your CONFIG.SYS and
- AUTOEXEC.BAT files to load as few drivers as possible. Some
- definite things to EXclude are memory managers (HIMEM, EMM386,
- QEMM, etc.) and network drivers (e.g. LSL, IPXODI). Most games
- don't need the former, and the latter will probably conflict with
- the packet driver. We recommend that you prepare an alternate
- configuration (the multiple configuration facility built into
- MS-DOS is ideal for this purpose; see your DOS manual for details)
- specifically for Internet games with a CONFIG.SYS portion
- containing only a FILES=20 line, and an AUTOEXEC.BAT portion
- containing only the line "prompt=$p$g". Be sure to include the
- line which loads your mouse driver (if you play your game using a
- mouse).
-
- Step 1: Set up the packet driver. If you do not already have a
- suitable packet driver installed on your machine, now is the time
- to install one. Start by determining your ethernet card's IRQ
- setting, it's base I/O port setting, and it's memory address
- setting (if any). You should be able to determine this by looking
- at the card itself and consulting the user manual. You'll need
- some if not all of this information, depending upon which packet
- driver you use and/or type of hardware you have (for example, some
- IBM computers with theMicroChannel bus can determine the settings
- on the card automatically without you having to supply them on the
- packet driver command line). Unzip the appropriate driver from
- Crynwr Packet Driver collection archive. In our example, the
- packet driver is called SMC_WD.COM. By looking at the jumpers on
- the card and consulting the manual, I determined that the card has
- been set to IRQ 7, Base I/O port address 300h, and the base memory
- address is at segment d800h. For this example, I have chosen to
- use interrupt 60h for the packet driver. Packet drivers typically
- operate on an interrupt in the range of 60h to 80h inclusive; since
- nothing else in my sample system happens to be using the first
- available interrupt (INT 60h), I chose that. Thus, to load my
- packet driver, I use the command line
-
- SMC_WD 0x60 0x7 0x300 0xd800
-
- where 0x60 is the packet driver interrupt, 0x7 is the IRQ setting
- on the card, 0x300 is the I/O port base address, and 0xd800 is the
- memory base address (NOTE: all numbers are in C-style HEX
- notation). Don't worry if you don't understand what all this stuff
- means - as long as you use the correct numbers, your packet driver
- should work. NOTE: If your PC is currently part of a Novell
- network (e.g. Netware, Netware Lite, Personal Netware) the
- parameters you need can be found in a file called NET.CFG, usually
- located in your \NOVELL, \NWLITE or \NWCLIENT subdirectories (along
- with all the other drivers needed by Novell). Add the proper
- command line to the AUTOEXEC.BAT for your Kali configuration so
- that the packet driver will be loaded automatically whenever you
- boot using the Kali partition.
-
- When successfully loaded, the packet driver should give a sign on
- message and report the ethernet address of your NIC when you load
- it. Chances are that if your NIC has been functioning properly for
- other tasks (e.g. as a node on a Novell network) then you'll have
- no problems here. If not, or if there are any error or warning
- messages, something is wrong (D'OHH!). One possibility is that one
- of the settings on your NIC is in conflict with those of another
- expansion card in your system. No two cards can have the same IRQ,
- I/O port, or memory address settings, nor can the memory areas of
- two cards overlap. Whatever the cause, you'll need to find and
- correct the problem before continuing.
-
- SLIP Setup Procedure
-
- This procedure assumes that you are using the cslipper SLIP driver
- mentioned earlier. If you are using a different driver, you'll need
- to change the commands which follow accordingly.
-
- Step 0: Obtain Internet access from a service provider who allows
- SLIP connections on their terminal server. A "shell account" (where
- you log in to a remote UNIX host and type commands such as "telnet"
- and "ftp") will require a SLIP emulator called SLiRP (read the
- SLiRP section below before continuing). How to obtain this type of
- service from such a provider is beyond the scope of this document.
- Also, if you are using a Microsoft Windows-based SLIP or PPP
- driver, such as Trumpet Winsock, you MUST obtain and install a DOS
- SLIP or PPP driver on your machine. Kali will NOT work with
- Windows drivers such as Trumpet or Cameleon
-
- Step 1: Using your favorite serial communications package, dial in
- to your service provider, log in, and issue whatever commands are
- required to change their terminal server to SLIP mode. How this is
- done varies from service provider to service provider and is beyond
- the scope of this document. Check with your service provider for
- more details.
-
- Once you have logged on and enabled SLIP mode, exit your
- telecommunications software WITHOUT HANGING UP THE MODEM - this is
- VERY IMPORTANT! Any telecommunications package worth the floppy on
- which it comes will have a "save without hangup" command, or will
- prompt you when you exit to ask whether it should hang up or not.
-
- Change to the directory where you have installed your packet driver
- and load it. An example command line for CSLIPPER is
-
- CSLIPPER com1 vec=0x60 baud=57600
-
- where com1 is the serial port to which your modem is connected,
- 0x60 is the interrupt vector the packet driver should use, and
- 57600 is the DTE baud rate (the baud rate between the computer and
- the modem, not necessarily the speed at which the modem has
- connected to the remote system). The packet driver will display a
- signon message and load itself into memory.
-
- Your SLIP packet driver is now loaded and ready for testing.
-
- Using Kali with a PPP account
-
- (from the PPP.FAQ)
- Here's a quick rundown on setting up PPP.EXE and Kali for a PPP
- connection. For complete details on each program, see the related
- documentation.
-
- First, you need a batch file to run ppp.exe. Here is an example of
- a batch file and what each option does:
-
- DIAL.BAT
- --------
- ppp /c 2 /d script /s 57600
-
- The "/c 2" tells PPP to dial out on COM2. The "/d script" tells
- PPP to use the file DIAL.PPP as a script. The "/s 57600" tells PPP
- to connect at 57600 (I've got a 14.4 modem and 16550 UART). As of
- this writing, 57600 is the fastest speed supported by ppp.exe. If
- you don't have a 16550 uart, you should select 38400 for the speed.
-
- Now you need a login script. The login script must be in the file
- called dial.ppp. Here is an example script:
-
- DIAL.PPP
- --------
- send "ATZ\r" ;reset the modem
- recv 3000 "OK\r\n" ;wait 3 seconds for OK response from modem
- send "atdt1234567\r" ;dial your provider; the \r is for RETURN
- recv 60000 "login:" ;wait 6 seconds for login prompt
- send "username\r" ;send your username and RETURN
- recv 10000 "Password:" ;wait 1 second for password prompt
- send "password\r" ;send your password and RETURN
-
- Note: the login and password prompts much match those used by your
- provider.
-
- Put your nickname in kali.cfg and then put your network information
- in wattcp.cfg. In many cases, this information will change each
- time you connect. In this case, you will have to re-edit
- wattcp.cfg each time.
-
- Using Kali With a Shell Account
-
- To use Kali with a shell account, you need a SLIP emulator. The
- only SLIP emulator that current supports port-redirection
- (something very important to Kali) is a program called SLiRP. Many
- internet providers, including netcom, use TIA for SLIP access.
- When TIA 2.0 comes out, it *might* work with Kali. In the
- meantime, you TIA users can use SLiRP instead.
-
- You *must* use the latest version of SLiRP, 0.9k. The older
- versions just won't work with Kali (problems with the UDP
- redirection code). To get SLiRP, login into your shell account and
- from there download the SLiRP source code from your favorite Kali
- site or the latest can always be found at:
-
- ftp://blitzen.canberra.edu.au/pub/slirp/
-
- The instructions for installing SLiRP are included with this
- program. Basically, you will need to unzip the archive first by
- typing:
-
- gunzip slirp-0.9k.tar.gz
-
- You then must untar the archive by typing:
-
- tar -xvf slirp-0.9k.tar
-
- This will create a directory structure called slirp-0.9k/. Go to
- the src subdirectory by typing cd slirp-0.9k/src. Type:
-
- configure
-
- Then type:
-
- make
-
- This will create a file called slirp. Copy this file to your home
- directory. Something like:
-
- cp slirp ~
-
- might work. Then, using your favorite text editor, create a file
- called .slirprc in your home directory. Put the following in this
- file:
-
- redir udp 2213 to aaa.bbb.ccc.ddd:2213
- baudrate 28800
- mtu 2000
-
- IMPORTANT: Replace aaa.bbb.ccc.ddd with the ip number of the host
- (unix) machine. Use this same number in your wattcp.cfg file.
- Your ip number will be the same as that of your host. Do NOT use
- the ip number reported by SLiRP anywhere in your configuration. If
- you do, it just won't work! Also, the baudrate is not the actual
- speed of the modem. It's hard to explain. Read the SLiRP docs for
- more info. Basically, higher numbers have faster through-put and
- slower response; lower numbers have slower through-put and faster
- response. You can experiment.
-
- Next, follow all the steps for using SLIP above. As far as
- connecting to your SLIP provider, connect to your shell account as
- you normally would. If you are connecting through a terminal
- server, be sure to get an 8 bit connection using rlogin. Some
- terminal servers have commands like "terminal download" or "set
- session 1 passall" to provide a better connection for pseudo SLIP
- users. If you have trouble with Kali working through a terminal
- server, be sure to look into this. After attaching and logging in,
- just type slirp. Exit your communication program without hanging
- up and continue like other SLIP users (see above).
-
- NOTE: Since SLiRP users must share the ip number of their host, two
- Kali players on the same host will have to use different ports for
- Kali. If you get an error when running SLiRP that says you don't
- have permission to redirect the port, try using a different port.
- Try 2214 instead. IMPORTANT: if you use a different port, be sure
- to add a line in your kali.cfg file that reads something like:
-
- port = 2214
-
- Also, if you plan to host a Kali VSN, the other players will have
- to enter your port number on the command line like this:
-
- Kali aaa.bbb.ccc.ddd 2214
-
- Setting up and using Kali
-
- Step 1: Set up a new directory where Kali and all its configuration
- files will be kept. You can name this directory anything you like
- (we suggest c:\Kali). UnZIP the kali103.zip file into this new
- directory, and make it the default (chdir to it). We will refer to
- this directory as the "Kali directory."
-
- Step 3: Set up your WATTCP.CFG file. Your WATTCP.CFG file contains
- important parameters used by the WATTCP TCP/IP kernel built into
- Kali. These values MUST be entered correctly if you wish to make a
- connection with another Kali node. In preparation for this, you'll
- need several bits of information. Contact the network administrator
- for your site and find out the IP address for your machine, the IP
- address for your gateway or router, the IP address of at least one
- Domain Name Server local to your site, and your netmask value. The
- three IP addresses will each consist of four groups of digits
- separated by periods. In our example, the machine's IP address is
- 128.191.23.5, the gateway is 128.191.23.1, the netmask is
- 255.255.255.0, and the nameserver address is 128.191.44.67. NOTE:
- it is important to use the numeric IP addresses, not the actual
- host names. NOTE: If you have other Internet programs currently
- installed on your machine, such as a Gopher client, the Trumpet
- newsreader, or the iFrag program, you can probably find the
- information you need in the configuration files used for those
- programs. If the application is based on the Waterloo TCP package,
- it will have it's own WATTCP.CFG, in which case you can simply copy
- it over to your Kali directory. When you have collected all this
- information, use your favorite ASCII text editor to edit the
- WATTCP.CFG file in your Kali directory. Edit or add the lines
- beginning with my_ip=, gateway=, nameserver=, and netmask=. On our
- example machine, the WATTCP.CFG file looks like this:
-
- my_ip=128.191.23.5
- gateway=128.191.23.1
- netmask=255.255.255.0
- nameserver=128.191.44.67
-
- Save the changed file and exit back to DOS.
-
- If you don't know the proper values for some or all of these
- settings, you can see if your site runs what is called a BOOTP
- server. If your LAN has a BOOTP server installed, you can put
- "BOOTP" on the "my_ip=" line and leave the other lines out. Kali
- will contact the BOOTP server and determine all the settings it
- needs to communicate with other machines on the Internet. If your
- site is not running a BOOTP server, then your task is a little more
- difficult (but not impossible!)
-
- If you know your machine's IP address, but you can't determine the
- other values, you can often get away with some educated guesswork.
- For instance, the gateway for a subnet usually has an IP address
- ending in .1, as is the case with our example. Thus, if your IP
- address is xxx.yyy.zzz.www, try setting your gateway's IP address
- to xxx.yyy.zzz.1. As for the subnet mask, a common value for this
- parameter is 255.255.255.0. In some cases, the gateway value can be
- something like xxx.yyy.1.1 with a corresponding netmask value of
- 255.255.0.0 - if one doesn't work, it can't hurt to try the other.
- Finally, if you don't know your nameserver's IP address, you can
- probably get by without it for the purposes of playing Internet
- games. Since you'll be specifying IP addresses for all of your
- opponents' machines, a nameserver lookup won't be necessary to
- resolve their addresses.
-
- Your basic setup is now complete. Please skip ahead to the section
- on testing your TCP/IP setup.
-
- Testing your TCP/IP Setup
-
- Step 1: At this point, your packet driver should be loaded and
- active. Now you'll use the network diagnostic programs obtained
- earlier to test the connection. For example, if you are using the
- WATTCP application suite, unzip the TCPINFO and PING programs from
- the WATTCP apps archive into your Kali directory. At the DOS
- prompt, type:
-
- TCPINFO
-
- and press the <Enter> key. If your WATTCP.CFG values are set up
- correctly, and if your packet driver and net connection are
- functional, you'll see a couple of screens of information about
- your system, including your ethernet address and the parameters you
- specified in the WATTCP.CFG file.
-
- If everything looks OK, the next step is to use the PING program to
- attempt to establish contact with your subnet gateway. At the DOS
- prompt, type
-
- PING <yourgateway's.numeric.ip.address>
-
- and press the <Enter> key. After a brief delay, you should see a
- message telling you that the host is responding, as well as the
- round trip time for PING's test packets. If you see the "Timeout"
- error message, then something is wrong with your setup; if your PC
- is unable to reach your gateway, it will be unable to reach the
- rest of the Internet as well, since all network packets which are
- sent to nodes outside of your local area network must pass through
- your gateway. For our sample system, we would type:
-
- ping 128.191.23.1
-
- If your gateway PING was successful, try PINGing your Domain Name
- Server (at the IP address you specified in WATTCP.CFG) as well as
- some well-known site on the internet (like ftp.cdrom.com). These
- will test your machine's ability to connect with other machines
- outside of your subnet as well as those outside of your site. All
- of these PINGs should result in a "host responding" message with a
- round trip time. If any of these attempts fails, recheck your
- entries in WATTCP.CFG and/or get some help from your network
- administrator. Examples for our test system:
-
- ping 128.191.44.67
-
- Put Me in, Coach - I'm Ready to Play!
-
- All right! Kali is now installed and ready for carnage! For this
- initial test, I have bribed 3 of my good friends with the promise
- of Papa Del's Pizza, after which they readily agree to assist me.
- We go over to the local computer lab (the one with P-90s, 21"
- monitors, and GUS soundcards at every station) and install packet
- drivers as outlined above. I note my IP address, and pass it along
- to my friends. From my Kali directory, I start Kali by typing
-
- Kali
-
- and pressing the <ENTER> key. My friends each start Kali by typing
- Kali followed by my machine's IP address, like so:
-
- Kali 128.191.66.24
-
- As each of my friends connects, his copy of Kali sends its IP
- address to my KaliNode, and my KaliNode responds with a list of all
- the other KaliNodes currently attached to mine. That way, each
- KaliNode knows the addresses of all the other KaliNodes in our
- game.
-
- Once we have Kali loaded, we switch to our game directory (in this
- case c:\games\descent) and load our games in the usual way. My
- friend Tree begins a multiplayer game, and the rest of us join in.
- After about 10 minutes of furious firefights, another player enters
- the lab and asks to join our game. We invite him to join, and he
- sits down at his computer, loads Kali with
-
- Kali 128.191.66.26
-
- (which is Tree's IP address). He then loads Descent, selects
- multiplayer from the menu, and is able to join our game in
- progress. Notice that the newcomer did not specify my IP address,
- but rather Tree's. It makes no difference which KaliNode he
- contacts, since he can receive the complete nodelist from any one
- of them. After a long and satisfying game in which I beat Tree by
- a 3:2 score ratio(*), we decide to take a break and head over to
- the nearest Taco Bell.
-
- Kali Servers and Kali Chat
-
- Kali Servers are special Kali nodes that run 24 hours a day, all
- year round. The purpose of Kali Servers is to provide a common
- meeting place for Kali players. Here is the most recent list of
- Kali Servers:
-
- ip# Name
- --- ----
- 204.96.20.10 Kali Central
- 199.233.91.1 kali.jedi.net
- 205.199.96.2 AXXIS Server
- 204.97.214.4 CastleNet
- 193.130.144.1 FlexNet
-
- To connect to a Kali Server, just type:
-
- Kali <server ip#>
-
- Once connected you will see a list of other people wanting to play
- games. Next to each name you will see what program they are
- running. If you see anyone running DESCENTR, then you know that a
- game of registered Descent is probably already underway and you can
- go ahead and load Descent and join the game. If you see people
- running KCHAT, then you know they are wanting to chat. Run Kali
- Chat by typing:
-
- kchat
-
- (Be sure to edit the kchat.cfg file)
-
- The chat program is a rather simple IRC-like chat program. You can
- talk to other players and decide which of the many IPX games you
- want to play.
-
-
- A Final Thought
-
- Killing your friends across the Internet can be VERY addictive.
- Have fun, but don't lose your "real" life just to play a game!
-
- (*) Hey, since I'm making up this hypothetical example scenario, I
- might as well go whole hog, right? ;-)
-
- Registering Kali
-
- Like so many of the games it supports, Kali is shareware. The
- price of Kali is $20 (US dollars). When you register, you will get
- your own personal serial number and key to unlock the full power of
- Kali. The shareware version has a 15 minute time limit; the
- registered version will let you play until you drop.
-
- Once you register, you will be assured free upgrades when Kali is
- improved...even if the price goes up in the future.
-
- Send registrations (US check or money order preferred) to:
- Jay Cotton
- PO Box 282
- Franklin Springs, GA 30639-0282
-
- *include your email address for faster response!
-
- For faster delivery and the convenience of credit cards, call Axxis
- at the following number:
-
- 1-801-565-1443 (this is NOT 1-800; it is NOT a toll-free call)
-
-
- To obtain Kali, log on to one of the following ftp sites (using
- anonymous ftp). Change to the specified directory (e.g. cd
- /pub/kali). Download the file kali11f.zip. This is the latest
- version of Kali as of this writing.
-
- ftp://ftp.axxis.com/pub/kali/
- ftp://ftp.internexus.net/pub/kali/
- ftp://kali.jedi.net/kali/
-
- The following Web sites also include information and some files:
-
- http://www.axxis.com/kali/
- http://www.internexus.net/kali/
- http://www.teleport.com/~caustic/
- http://gremlinx.bevc.blacksburg.va.us/
-
-
- Kali was written by Jay Cotton (jay@calc.vet.uga.edu).
- (C)Copyright 1995 by Jay Cotton. All Rights Reserved.